<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 transitional//EN">
<html>
<head>
<title>Join Condition Element (Eclipse BIRT ROM Documentation)</title>
<link rel="stylesheet" href="../style/style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<p class="title">Eclipse BIRT Report Object Model (ROM)</p>
<p class="subtitle">JoinCondition Structure</p>
<h1>Structure Overview</h1>
<div class="section-text">
Defines a join condition.</div>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Display Name:</td>
<td>Join Condition</td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
</table>

<h3>Property Summary</h3>

<dl class="section-text">
<dt><a href="#Property-joinOperator">joinOperator</a></dt>
<dd>The comparator of the condition.</dd>
<dt><a href="#Property-joinType">joinType</a></dt>
<dd>The join type.</dd>
<dt><a href="#Property-leftDataSet">leftDataSet</a></dt>
<dd>The name of left data set of the condition.</dd>
<dt><a href="#Property-leftExpression">leftExpression</a></dt>
<dd>The left expression of the condition.</dd>
<dt><a href="#Property-rightDataSet">rightDataSet</a></dt>
<dd>The name of right data set of the condition.</dd>
<dt><a href="#Property-rightExpression">rightExpression</a></dt>
<dd>The right expression of the condition.</dd>
</dl>

<h3>Description</h3>

<div class="section-text">
<p>User can define a joint data set which is a data set joined by several data sets on some join conditions,
The join condition is whether two expressions,left expression and right expression, satisfy a relationship 
defined by the join operator which can be equality, less than or greater than. Left expression is 
an expression of fields from left dataset, right expression is an expression of fields 
from right dataset.</p>

<p>For example, a condition can be:</p>
<p><pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dataSet1 inner join dataSet2 on 2 * column1 = 3 * column2</pre></p>
<p>"column1" is from the data set named "dataSet1", "coloumn2" is from "dataSet2".</p>
<p>This condition is defined by JoinCondition with following members:</p>
<table>
<tr><td width="20%"/><td>joinType</td><td>=</td><td>inner join</td></tr>
<tr><td width="20%"/><td>joinOperator</td><td>=</td><td>eq</td></tr>
<tr><td width="20%"/><td>leftDataSet</td><td>=</td><td>"dataSet1"</td></tr>
<tr><td width="20%"/><td>rightDataSet</td><td>=</td><td>"dataSet2"</td></tr>
<tr><td width="20%"/><td>leftExpression</td><td>=</td><td>"2 * column1"</td></tr>
<tr><td width="20%"/><td>rightExpression</td><td>=</td><td>"3 * column2"</td></tr>
</table>
</pre></div>
<h1>Property Detail</h1>

<h2><a name="Property-joinOperator">joinOperator Property</a></h2>

<p class="section-text">The comparator of the condition.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#choice">choice</a> (joinOperator)</td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>No</td></tr>
<tr><td>Display Name:</td>
<td>Join operator</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>eq</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Choices</h3>

<table class="section-table">
<thead><tr><td>Name</td><td>Display Name</td>
<td>Value</td><td>Description</td></tr></thead>
<tbody>
<tr><td>eq</td>
<td>Equals</td>
<td>eq</td>
<td></td></tr>
</tbody></table><br>
<h3>Description</h3>

<div class="section-text">
<p>The comparator of the condition: equals, less than or greater than.</p></div>

<hr>
<h2><a name="Property-joinType">joinType Property</a></h2>

<p class="section-text">The join type.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#choice">choice</a> (joinType)</td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>No</td></tr>
<tr><td>Display Name:</td>
<td>Join type</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>inner</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Choices</h3>

<table class="section-table">
<thead><tr><td>Name</td><td>Display Name</td>
<td>Value</td><td>Description</td></tr></thead>
<tbody>
<tr><td>inner</td>
<td>Inner Join</td>
<td>inner</td>
<td></td></tr>
<tr><td>left-out</td>
<td>Left Out Join</td>
<td>left-out</td>
<td></td></tr>
<tr><td>right-out</td>
<td>Right Out Join</td>
<td>right-out</td>
<td></td></tr>
<tr><td>full-out</td>
<td>Full Out Join</td>
<td>full-out</td>
<td></td></tr>
</tbody></table><br>
<h3>Description</h3>

<div class="section-text">
<p>The join type: inner join, left out join or right out join.</p></div>

<hr>
<h2><a name="Property-leftDataSet">leftDataSet Property</a></h2>

<p class="section-text">The name of left data set of the condition.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#string">string</a></td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>Yes</td></tr>
<tr><td>Display Name:</td>
<td>Left data set</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>None</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Description</h3>

<div class="section-text">
<p>The name of left data set of the condition.</p></div>

<hr>
<h2><a name="Property-leftExpression">leftExpression Property</a></h2>

<p class="section-text">The left expression of the condition.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#expression">expression</a></td></tr>
<tr><td>Context:</td>
<td></td></tr>
<tr><td>Expression Type:</td>
<td>any</td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>Yes</td></tr>
<tr><td>Display Name:</td>
<td>Left expression</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>None</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Description</h3>

<div class="section-text">
<p>The left expression of the condition.</p></div>

<hr>
<h2><a name="Property-rightDataSet">rightDataSet Property</a></h2>

<p class="section-text">The name of right data set of the condition.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#string">string</a></td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>Yes</td></tr>
<tr><td>Display Name:</td>
<td>Right data set</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>None</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Description</h3>

<div class="section-text">
<p>The name of right data set of the condition.</p></div>

<hr>
<h2><a name="Property-rightExpression">rightExpression Property</a></h2>

<p class="section-text">The right expression of the condition.</p>
<h3>Details</h3>

<table class="detail-table">
<tr><td>Type:</td>
<td><a href="../types.html#expression">expression</a></td></tr>
<tr><td>Context:</td>
<td></td></tr>
<tr><td>Expression Type:</td>
<td>any</td></tr>
<tr><td>Since:</td>
<td>2.1</td></tr>
<tr><td>Required:</td>
<td>Yes</td></tr>
<tr><td>Display Name:</td>
<td>Right expression</td></tr>
<tr><td>JavaScript Type:</td>
<td></td></tr>
<tr><td>Default Value:</td>
<td>None</td></tr>
<tr><td>Runtime Settable:</td>
<td>Yes</td></tr>
</table>

<h3>Description</h3>

<div class="section-text">
<p>The right expression of the condition.</p></div>
</body>
</html>
